package com.sky.config;

import com.sky.properties.AliOssProperties;
import com.sky.utils.AliOssUtil;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class IocConfiguration {

    /**
     * 如果一个方法上添加了@Bean注解，那么这个方法就会被spring调用，在调用该方法的时候发现需要
     * 一个参数，那么spring就会从ioc容器中拿到这个对象并且传递进来 然后执行方法 创建对象
     * 最后把创建的对象放入到spring的ioc容器
     * @param aliOssProperties
     * @return
     */
    @Bean
    public AliOssUtil aliOssUtil(AliOssProperties aliOssProperties){
        return new AliOssUtil(aliOssProperties.getEndpoint(),
                aliOssProperties.getAccessKeyId(),
                aliOssProperties.getAccessKeySecret(),
                aliOssProperties.getBucketName());
    }
}
